Skip to content

Rollup of 9 pull requests#154633

Merged
rust-bors[bot] merged 66 commits intorust-lang:mainfrom
tgross35:rollup-Yvmg0Vs
Mar 31, 2026
Merged

Rollup of 9 pull requests#154633
rust-bors[bot] merged 66 commits intorust-lang:mainfrom
tgross35:rollup-Yvmg0Vs

Conversation

@tgross35
Copy link
Copy Markdown
Contributor

Successful merges:

r? @ghost

Create a similar rollup

AsakuraMizu and others added 30 commits March 11, 2026 20:41
The `_umtx_time` flags check in `read_umtx_time` used equality (`flags == abs_time`) instead of bitwise AND (`flags & abs_time != 0`) to detect `UMTX_ABSTIME`. While functionally equivalent for current valid inputs (0 or `UMTX_ABSTIME` alone), the equality check would silently treat an absolute timeout as relative if `flags` had `UMTX_ABSTIME` set alongside other bits. Additionally, unknown flags were silently accepted, whereas the FreeBSD kernel (`umtx_copyin_umtx_time()` in `kern_umtx.c`) rejects them with `EINVAL`.

The fix adds validation that rejects unsupported flags and switches to the standard bitwise AND pattern used elsewhere in the codebase (e.g. `O_APPEND`/`O_TRUNC` checks in `fs.rs`).
…threads

Unblock all threads with exceeded timeouts at once
This updates the rust-version file to 212b0d4.
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: 212b0d4
Filtered ref: e8897faa70ed30070b7637e854418aa7aa5ea0d9
Upstream diff: rust-lang/rust@fd0c901...212b0d4

This merge was created using https://github.com/rust-lang/josh-sync.
CONTRIBUTING: explain how to build miri against a locally built rustc
test miri_start with and without std
This updates the rust-version file to 8a70352.
./miri toolchain: support overwriting the to-be-installed commit
This updates the rust-version file to 1174f78.
tgross35 and others added 10 commits March 30, 2026 18:45
Remove the `compiler-builtins` feature from default because it prevents
testing via the default `cargo test` command. It made more sense as a
default when `compiler-builtins` was a dependency that some crates added
via crates.io, but is no longer needed.

The `rustc-dep-of-std` feature is also removed since it doesn't do
anything beyond what the `compiler-builtins` feature already does.
compiler-builtins: Clean up features

Remove the `compiler-builtins` feature from default because it prevents
testing via the default `cargo test` command. It made more sense as a
default when `compiler-builtins` was a dependency that some crates added
via crates.io, but is no longer needed.

The `rustc-dep-of-std` feature is also removed since it doesn't do
anything beyond what the `compiler-builtins` feature already does.
…-normalization-ice, r=lcnr

Avoid ICE when param-env normalization leaves unresolved inference variables

Fixes rust-lang#153354

Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
…donszelmann,bjorn3

Fix EII function aliases eliminated by LTO

Add EII function aliases to `llvm.compiler.used` so that LLVM's LTO passes do not eliminate them.

Fixes rust-lang#153645

Tracking issue: rust-lang#125418
…r=jdonszelmann

Fix regression when dealing with generics/values with unresolved inference

Follow up for rust-lang#151703, fixing regression caused in rollup rust-lang#152825

Forgot to handle generics & unresolved inference variables (as in `get_safe_transmute_error_and_reason`) in my previous PR. This followup checks for them before trying to normalize.

I am not completely sure its right approach to have this check cloned but as `select_transmute_obligation_for_reporting` fn just chooses obligation and doesn't actually return an error, this check shouldn't be removed from `get_safe_transmute_error_and_reasnon`. If there is any better solution, let me kmow.

Fixes: rust-lang#153755

r? @jdonszelmann
…t-ne-suggestion-span, r=JohnTitor

Skip suggestions pointing to macro def for assert_eq

Fixes rust-lang#146204

It's better to suggest:
```console
help: consider borrowing here
 --> src/main.rs:3:16
  |
 3|      assert_ne!(&buf, b"----");
  |                 +
```
but i don't want to give a too heuristic but not general enough fix, let suppress them.
delete several `ui/consts` tests

* `tests/ui/consts/const.rs`: meaningless
* `tests/ui/consts/const-bound.rs`: has nothing to do with const bounds or const at all (anymore?)
* `tests/ui/consts/const-enum-tuplestruct2.rs`, `tests/ui/consts/const-enum-tuple2.rs`, `tests/ui/consts/const-enum-tuple.rs`: duplicates of `tests/ui/consts/const-enum-tuplestruct.rs`
r? @Kivooeo
…youxu

Update `mir-opt` 64-bit panic-abort tests for `Alignment` rename

These seem to have been missed when the PR originally merged.

cc rust-lang#154004, @GrigorenkoPV
…lcnr

remove debug requirement from hooks

This change seems useful regardless. It came out of the eager normalize in generalize PR.

r? @lcnr
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Mar 31, 2026
@rustbot rustbot added A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Mar 31, 2026
@tgross35
Copy link
Copy Markdown
Contributor Author

@bors r+ rollup=never p=5

@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors bot commented Mar 31, 2026

📌 Commit 4485c39 has been approved by tgross35

It is now in the queue for this repository.

@rust-bors rust-bors bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 31, 2026
@rust-bors

This comment has been minimized.

@rust-bors rust-bors bot added merged-by-bors This PR was explicitly merged by bors. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 31, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors bot commented Mar 31, 2026

☀️ Test successful - CI
Approved by: tgross35
Duration: 3h 46m 37s
Pushing e4fdb55 to main...

@rust-bors rust-bors bot merged commit e4fdb55 into rust-lang:main Mar 31, 2026
12 checks passed
@rustbot rustbot added this to the 1.96.0 milestone Mar 31, 2026
@github-actions
Copy link
Copy Markdown
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing 37cfa17 (parent) -> e4fdb55 (this PR)

Test differences

Show 23 test diffs

Stage 1

  • [crashes] tests/crashes/120033.rs: pass -> [missing] (J1)
  • [ui] tests/ui/consts/const-bound.rs: pass -> [missing] (J1)
  • [ui] tests/ui/consts/const-enum-tuple.rs: pass -> [missing] (J1)
  • [ui] tests/ui/consts/const-enum-tuple2.rs: pass -> [missing] (J1)
  • [ui] tests/ui/consts/const-enum-tuplestruct2.rs: pass -> [missing] (J1)
  • [ui] tests/ui/consts/const.rs: pass -> [missing] (J1)
  • [ui] tests/ui/macros/assert-ne-no-invalid-help-issue-146204.rs: [missing] -> pass (J1)
  • [ui] tests/ui/traits/non_lifetime_binders/normalized-param-env-unconstrained-type-120033.rs: [missing] -> pass (J1)
  • [ui] tests/ui/traits/self-referential-param-env-normalization.rs: [missing] -> pass (J1)
  • [ui] tests/ui/transmutability/generic-transmute-from-regression.rs: [missing] -> pass (J1)

Stage 2

  • [ui] tests/ui/consts/const-bound.rs: pass -> [missing] (J0)
  • [ui] tests/ui/consts/const-enum-tuple.rs: pass -> [missing] (J0)
  • [ui] tests/ui/consts/const-enum-tuple2.rs: pass -> [missing] (J0)
  • [ui] tests/ui/consts/const-enum-tuplestruct2.rs: pass -> [missing] (J0)
  • [ui] tests/ui/consts/const.rs: pass -> [missing] (J0)
  • [ui] tests/ui/macros/assert-ne-no-invalid-help-issue-146204.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/non_lifetime_binders/normalized-param-env-unconstrained-type-120033.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/self-referential-param-env-normalization.rs: [missing] -> pass (J0)
  • [ui] tests/ui/transmutability/generic-transmute-from-regression.rs: [missing] -> pass (J0)
  • [crashes] tests/crashes/120033.rs: pass -> [missing] (J2)

Additionally, 3 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard e4fdb554ad2c0270473181438e338c42b5b30b0c --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. aarch64-apple: 2h 33m -> 3h 39m (+43.1%)
  2. dist-x86_64-apple: 2h 15m -> 1h 38m (-27.5%)
  3. dist-apple-various: 1h 23m -> 1h 41m (+22.7%)
  4. x86_64-gnu-llvm-22-1: 1h 15m -> 1h 3m (-15.2%)
  5. x86_64-gnu-llvm-21-2: 1h 38m -> 1h 25m (-13.4%)
  6. dist-aarch64-apple: 1h 53m -> 1h 39m (-12.9%)
  7. x86_64-mingw-1: 2h 36m -> 2h 51m (+9.2%)
  8. dist-powerpc64-linux-musl: 1h 43m -> 1h 34m (-9.1%)
  9. aarch64-msvc-2: 1h 52m -> 1h 43m (-7.9%)
  10. i686-msvc-1: 3h -> 2h 45m (-7.8%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#142659 compiler-builtins: Clean up features 307460db058325b464bfc4afce418f979e79e992 (link)
#153574 Avoid ICE when param-env normalization leaves unresolved in… d176db63c8046e7bcb8a7d08c50639ede6f0aaf5 (link)
#153648 Fix EII function aliases eliminated by LTO 170c1472053405fcbafc71a7c95689d2fe4dc859 (link)
#153790 Fix regression when dealing with generics/values with unres… 91a8db6840f51086c0517b4e6d2a28eeb5077a9d (link)
#154551 Skip suggestions pointing to macro def for assert_eq b56da769ee4dc7fae7c863c2d661555f2ee4191b (link)
#154574 delete several ui/consts tests 48a5fc6cd8261f9895b78e892b973532bca1fd76 (link)
#154577 Update mir-opt 64-bit panic-abort tests for Alignment r… c8493b893bc7f21f8ac1bb8e6afb8543b7ab683d (link)
#154579 remove debug requirement from hooks 0766cd7115db070031b33813078b8fe291aed711 (link)
#154582 miri subtree update aca13bc2b10e5332902f5ef6623f9a2fb0f9f541 (link)

previous master: 37cfa179be

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer
Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (e4fdb55): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results (primary -1.8%, secondary 3.4%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.4% [2.0%, 4.8%] 2
Improvements ✅
(primary)
-1.8% [-1.8%, -1.8%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -1.8% [-1.8%, -1.8%] 1

Cycles

Results (primary 2.3%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
2.3% [2.3%, 2.3%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.3% [2.3%, 2.3%] 1

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 485.095s -> 484.743s (-0.07%)
Artifact size: 394.90 MiB -> 394.91 MiB (0.00%)

@tgross35 tgross35 deleted the rollup-Yvmg0Vs branch March 31, 2026 17:45
chenyukang pushed a commit to chenyukang/rust that referenced this pull request Apr 1, 2026
Rollup of 9 pull requests

Successful merges:

 - rust-lang#154582 (miri subtree update)
 - rust-lang#142659 (compiler-builtins: Clean up features)
 - rust-lang#153574 (Avoid ICE when param-env normalization leaves unresolved inference variables)
 - rust-lang#153648 (Fix EII function aliases eliminated by LTO)
 - rust-lang#153790 (Fix regression when dealing with generics/values with unresolved inference)
 - rust-lang#154551 (Skip suggestions pointing to macro def for assert_eq)
 - rust-lang#154574 (delete several `ui/consts` tests)
 - rust-lang#154577 (Update `mir-opt` 64-bit panic-abort tests for `Alignment` rename)
 - rust-lang#154579 (remove debug requirement from hooks)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.